package com.bw.dao;

import com.bw.pojo.Role;
import com.bw.pojo.User;
import com.bw.pojo.vo.GetUserDetailsVo;
import com.bw.pojo.vo.UserVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserDao {
    User login(@Param("username") String username);

    List<User> getUserList(User user);

    void addUser(User user);

    void delUser(@Param("uids") String uids);



    //批量添加
    void userAddAll(List<User> list);



    //循环批删
    void userDel(@Param("uid") String[] uid);

    User findById(@Param("uid") Integer uid);
    void del(@Param("uid") Integer uid);
    void updUser(User user);

    /**
     * 查询用户表
     * @return
     */
    List<GetUserDetailsVo> userList();
    /**
     * 用户详情 用户对应的角色
     */
    UserVo getUserByUserId(@Param("uid") Integer uid);

    /**
     * 获取用户列表
     * @param userVo
     * @return
     */
    List<UserVo> getUserListByMap(UserVo userVo);
    /**
     * 根据用户id角色列表
     */
    List<Role> getRoleListUser(@Param("uid") Integer uid);
}
